gtk-demo: Make one text scroll benchmark harder
authorMatthias Clasen <mclasen@redhat.com>
Fri, 9 Apr 2021 03:09:14 +0000 (23:09 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Fri, 9 Apr 2021 03:34:36 +0000 (23:34 -0400)
Add underlines into the mix with the Emoji heavy
text, to see if we can optimize lines.

demos/gtk-demo/iconscroll.c

index 2eb9aa6e92b8e8b5341ced695efc1e3b7172b2fc..8212818516f1838e09e2de80e5e0075aab59479a 100644 (file)
@@ -116,20 +116,25 @@ populate_emoji_text (void)
   GtkWidget *textview;
   GtkTextBuffer *buffer;
   GString *s;
+  GtkTextIter iter;
 
-  s = g_string_sized_new (1000 * 30 * 4);
+  s = g_string_sized_new (500 * 30 * 4);
 
-  for (int i = 0; i < 1000; i++)
+  for (int i = 0; i < 500; i++)
     {
       if (i % 2)
-        g_string_append (s, "x");
+        g_string_append (s, "<span underline=\"single\" underline_color=\"red\">x</span>");
       for (int j = 0; j < 30; j++)
-        g_string_append (s, "💓x");
+        {
+          g_string_append (s, "💓");
+          g_string_append (s, "<span underline=\"single\" underline_color=\"red\">x</span>");
+        }
       g_string_append (s, "\n");
     }
 
   buffer = gtk_text_buffer_new (NULL);
-  gtk_text_buffer_set_text (buffer, s->str, s->len);
+  gtk_text_buffer_get_start_iter (buffer, &iter);
+  gtk_text_buffer_insert_markup (buffer, &iter, s->str, s->len);
 
   g_string_free (s, TRUE);